namespace UnityTouchTable.Runtime
{
    /// <summary>
    /// 改变角度索引事件参数
    /// </summary>
    public class ChangeAngleIndexEventArgs : TouchTable.Event.BaseEventArgs<ChangeAngleIndexEventArgs>
    {
        #region Field
        /// <summary>
        /// 角度索引
        /// </summary>
        private int m_AngleIndex;

        /// <summary>
        /// 单位角度
        /// </summary>
        private float m_UnitAngle;
        #endregion

        #region Property
        /// <summary>
        /// 获取或设置角度索引
        /// </summary>
        /// <value></value>
        public int AngleIndex
        {
            get => this.m_AngleIndex;
            set => this.m_AngleIndex = value;
        }

        /// <summary>
        /// 获取或设置单位角度
        /// </summary>
        public float UnitAngle
        {
            get => this.m_UnitAngle;
            set => this.m_UnitAngle = value;
        }
        #endregion

        #region Function
        public override void Dispose()
        {
            base.Dispose();

            this.m_AngleIndex = default;
            this.m_UnitAngle = default;
            ChangeAngleIndexEventArgs.QUEUE.Enqueue(this);
        }
        #endregion
    }
}